﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Negocios
{
    public class EpisodioBO
    {
        private int id;

        public int Id
        {
            get { return id; }
            set { id = value; }
        }

        private string nome;

        public string Nome
        {
            get { return nome; }
            set 
            {
                if (value.Length > 50)
                {
                    throw new BOException("O campo Nome não pode possuir mais de 50 caracteres.");
                }
                if (value == string.Empty)
                {
                    throw new BOException("O campo Nome não pode estar vazio.");
                }
                nome = value; 
            }
        }

        private ProgramaBO programa;

        public ProgramaBO Programa
        {
            get { return programa; }
            set {
                if (value == null)
                {
                    throw new BOException("Um Programa deve ser selecionado.");
                }
                else
                {
                    programa = value;
                }
                }
        }

        private bool payperview;

        public bool Payperview
        {
            get { return payperview; }
            set { payperview = value; }
        }

        private decimal preco;

        public decimal Preco
        {
            get { return preco; }
            set
            {
                if (payperview == false)
                {
                    value = 0;
                }
                           
                preco = value;
                
            }
        }

        private string sinopse;

        public string Sinopse
        {
            get { return sinopse; }
            set
            {
                if (value.Length > 200)
                {
                    throw new BOException("O campo Sinópse não pode possuir mais de 200 caracteres.");
                }
                if (value == string.Empty)
                {
                    throw new BOException("Preencha o campo Sinopse.");
                }
                sinopse = value; 
            }
        }

        private DateTime tempo;

        public DateTime Tempo
        {
            get { return tempo; }
            set
            {
                if (value == null)
                {
                    throw new BOException("Preencha o campo Tempo!!");
                }
                tempo = value; 
            }
        }
    }
}